home *** CD-ROM | disk | FTP | other *** search
/ MacAdvocate 2 / apple-mac-advocate-ii-fall-1997.iso / mac / MacOS / Other Installers / LaserWriter 8.4.1 Installer / LaserWriter Disk 1 / PL.CommonRsrc / PL.CommonRsrc.rsrc / PS_-8184 < prev    next >
Encoding:
Text File  |  1996-09-10  |  2.1 KB  |  123 lines

  1. %%BeginFile: lw8_nup-2.0
  2. /nx Z
  3. /ny Z
  4. /pagew Z
  5. /pageh Z
  6. /angle Z
  7. /paperw Z
  8. /paperh Z
  9. /nups Z
  10. /pgx Z
  11. /pgy Z
  12. /papermarg 1 def
  13. /pagemarg 10 def
  14. /framewidth 1 def
  15. /numframes 2 def
  16. /stepdirection F def
  17. /startpage{
  18. gS
  19. 0 0 mT transform pagew pageh mT dtransform rC
  20. }bd
  21. /startNup{
  22. /ny xs
  23. /nx xs
  24. /pageh xs
  25. /pagew xs
  26. dup/angle xs
  27. rotate
  28. angle 180 mod 0 ne
  29. {
  30. /por por not store
  31. }if
  32. clippath/nups pathbbox
  33. 3 -1 roll sub
  34. papermarg sub
  35. ny div pagemarg sub
  36. pageh div exch
  37. 3 -1 roll sub
  38. papermarg sub nx div
  39. pagemarg sub pagew div
  40. 2 copy gt{exch}if pop store
  41. nups dup scale
  42. /paperw pagew pagemarg nups div add store
  43. /paperh pageh pagemarg nups div add store
  44. pathbbox mT aload pop
  45. pagemarg nups div dup
  46. 8 index 11 index sub
  47. paperh ny mul sub
  48. add 2 div exch
  49. 9 index 12 index sub paperw nx mul sub add 2 div
  50. 8 -2 roll add 0 gt{9}{neg 7}ifelse index add 4 -1 roll sub exch
  51. 5 -2 roll add 0 gt{5}{neg 3}ifelse index add 3 -1 roll sub :T pop pop pop pop
  52. /paperw paperw paperh mT idtransform abs/paperh xs abs store
  53. /pagew pagew pageh mT idtransform abs/pageh xs abs store
  54. mT 0 get abs mT 1 get abs lt{/nx ny/ny nx store store}if
  55. .48 framewidth div nups div lw
  56. /pgx 0 store/pgy 0 store
  57. np
  58. stepdirection
  59. {
  60. paperw nx 1 sub mul 0 mT dtransform :T
  61. /paperw paperw neg store
  62. }if
  63. startpage
  64. }bd
  65. /startnup{
  66. angle
  67. pagew
  68. pageh
  69. mT dtransform abs exch abs exch
  70. nx
  71. ny
  72. mT 0 get abs mT 1 get abs lt{exch}if
  73. startNup
  74. }bd
  75. /realshowpage/showpage ld
  76. /nupshowpage{
  77. gR
  78. mT concat
  79. numframes 0 gt
  80. {
  81. /setstrokeadjust where{pop currentstrokeadjust T setstrokeadjust}if
  82. pagemarg 2 div nups div dup mT idtransform
  83. abs neg exch abs neg exch paperw
  84. stepdirection{neg}if
  85. paperh
  86. currentlinewidth framewidth mul 4 mul
  87. adjRect
  88. numframes
  89. {
  90. 4 copy
  91. rS
  92. currentlinewidth framewidth
  93. mul 4 mul
  94. adjRect
  95. }repeat
  96. pop pop pop pop
  97. /setstrokeadjust where{pop setstrokeadjust}if
  98. }if
  99. /pgx pgx 1 add dup nx eq{
  100. pop 0 store
  101. paperw
  102. 1 nx sub mul
  103. /pgy pgy 1 add dup ny eq{
  104. gS realshowpage gR
  105. pop 0 store
  106. paperh 1 ny sub mul
  107. }{
  108. store paperh
  109. }ifelse
  110. }{
  111. store paperw
  112. 0
  113. }ifelse :T
  114. mT $m invertmatrix concat startpage
  115. }bd
  116. userdict/showpage/nupshowpage load put
  117. /finalpage{
  118. gR
  119. pgx 0 gt pgx nx lt and pgy 0 gt pgy ny lt and or{realshowpage}if
  120. /showpage/realshowpage ld
  121. }bd
  122. %%EndFile
  123.